#include "process.h"
#include <string.h>
#include <unistd.h>

#define NUM 101
#define STYLE '#'


FlushProcess(double total,double current)
{
    char buffer[NUM];
    memset(buffer,0,sizeof(buffer));
    const char* lable="|/-\\";
    int len=strlen(lable);

    static int cnt=0;

    //不需要自己循环填充#
    int num = (int) (current*100/total);
    for(int i=0;i<num ;i++)
    {
        buffer[i]=STYLE;
    }

    double rate=current/total;

    cnt%=len;
    printf("[%-100s][%.lf%%][%c]\r",buffer,rate*100,lable[cnt]);
    cnt++;
    fflush(stdout);

}



void process_v1()
{
    char buffer[NUM];
    memset(buffer,0,sizeof(buffer));
    const char* lable="|/-\\";
    int len=strlen(lable);

    int cnt=0;
    while(cnt<=100)
    {
        printf("[%-100s][%d%%][%c]\r",buffer,cnt,lable[cnt%len]);
        fflush(stdout);
        buffer[cnt]=STYLE;
        cnt++;
        usleep(50000);
    }
    printf("\n");
}
